<!-- 实现的功能 当在input框中输入时上面会弹出框 大号字体显示 -->
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>模拟京东快递单号查询</title>
        <style>
            * {
                margin: 0;
                padding: 0;
            }

            .search {
                margin: 100px;
                width: 178px;
                position: relative;
            }
            .con {
                display: none;
                position: absolute;
                top: -40px;
                width: 171px;
                border: 1px solid rgba(0, 0, 0, 0.2);
                box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
                padding: 5px 0;
                font-size: 18px;
                line-height: 20px;
                color: #333;
            }
            .con::before {
                content: '';
                width: 0;
                height: 0;
                position: absolute;
                top: 28px;
                left: 18px;
                border: 8px solid #000;
                border-style: solid dashed dashed;
                border-color: #fff transparent transparent;
            }
        </style>
    </head>
    <body>
        <div class="search">
            <div class="con">123</div>
            <input type="text" placeholder="请输入你的单号" class="jd" />
        </div>
        <script>
            // 实现思路：给input设计键盘监听事件 把快递单号里面的值赋值给大盒子 失去焦点的时候隐藏这个盒子，获得焦点且文本框内容不为空就显示
            // 这个盒子
            var con = document.querySelector('.con');
            var jd_input = document.querySelector('.jd');
            jd_input.addEventListener('keyup', function (e) {
                if (this.value == '') {
                    con.style.display = 'none';
                } else {
                    con.style.display = 'block';
                    con.innerText = this.value;
                }
            });
            // 当我们失去焦点，就隐藏这个con盒子
            jd_input.addEventListener('blur', function () {
                con.style.display = 'none';
            });
            // 当我们获得焦点，就显示这个con盒子
            jd_input.addEventListener('focus', function () {
                if (this.value !== '') {
                    con.style.display = 'block';
                }
            });
        </script>
    </body>
</html>
